﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MontagsmalerApp.ViewModels
{
	/// <summary>
	/// Der aktuelle Status des Spiels
	/// </summary>
	public abstract class SpielStatus
	{
		/// <summary>
		/// Das Spiel, dessen Status in dieser Klasse repräsentiert wird.
		/// </summary>
		protected Spiel _spiel;

		/// <summary>
		/// Erzeugt einen neuen Spielstatus und verknüpft sich mit einem Spiel.
		/// </summary>
		/// <param name="spiel"></param>
		public SpielStatus(Spiel spiel)
		{
			this._spiel = spiel;
		}

		public abstract void SpielVorbereiten();
		public abstract void MalrundeVorbereiten();
		public abstract void NeuenBegriffErzeugen();
		public abstract void BegriffBeenden(bool erraten);
		public abstract void MalrundeBeenden();
		public abstract void SpielBeenden();
	}
}
